﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace Model.Hero
{
    public class Buff : Base_Stats
    {
        //general stats
        private int _duration;
        private String _name;
        private bool _invisible; //cannot be seen in the GUI
        private bool _permanent; //no duration, the buff is permanent and cannot be dispelled
        private bool _active; //some buffs could be inactive for various reasons

        //stat bonusses from Base_Stats        
        //no other bonusses to simplify design.

        public Buff(String name, int duration, bool invisible, bool permanent)
        {
            _name = name;
            _duration = duration;
            _invisible = invisible;
            _permanent = permanent;
            _active = true;
        }

        public String Name
        {
            get { return _name; }
            set { _name = value; }
        }

        public int Attack_Rating
        {
            get { return _attack_rating; }
            set { _attack_rating = value; }
        }

        public int Defense_Rating
        {
            get { return _defense_rating; }
            set { _defense_rating = value; }
        }

        public bool Active
        {
            get { return _active; }
            set { _active = value; }
        }
    }

    public class Debuff : Buff //inherited to make an easier distinction
    {

        public Debuff(String name, int duration, bool invisible, bool permanent)
            : base(name, duration, invisible, permanent)
        {
        }
    }
}
